package com.apartment.own.service;

import java.util.List;
import com.apartment.own.domain.OwnOrdTenantContract;
import com.apartment.own.request.ord.ApproveDTO;
import com.apartment.own.request.ord.TenantContractDTO;
import com.apartment.own.response.ord.ApproveResp;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * 租客合同Service接口
 * 
 * @author @Dog_E
 * @date 2020-08-28
 */
public interface IOwnOrdTenantContractService extends IService<OwnOrdTenantContract>
{
    /**
     * 查询租客合同
     * 
     * @param id 租客合同ID
     * @return 租客合同
     */
    public OwnOrdTenantContract selectOwnOrdTenantContractById(Long id);

    /**
     * 查询租客合同列表
     * 
     * @param ownOrdTenantContract 租客合同
     * @return 租客合同集合
     */
    public List<OwnOrdTenantContract> selectOwnOrdTenantContractList(OwnOrdTenantContract ownOrdTenantContract);

    /**
     * 新增租客合同
     *
     * @param ownOrdTenantContract 租客合同
     * @return 结果
     */
    public int insertOwnOrdTenantContract(OwnOrdTenantContract ownOrdTenantContract);


    /**
     * 修改租客合同
     * 
     * @param ownOrdTenantContract 租客合同
     * @return 结果
     */
    public int updateOwnOrdTenantContract(OwnOrdTenantContract ownOrdTenantContract);

    /**
     * 批量删除租客合同
     * 
     * @param ids 需要删除的租客合同ID
     * @return 结果
     */
    public int deleteOwnOrdTenantContractByIds(Long[] ids);

    /**
     * 删除租客合同信息
     * 
     * @param id 租客合同ID
     * @return 结果
     */
    public int deleteOwnOrdTenantContractById(Long id);


    /**
     * @Description: 添加租客合同
     * @param contractDTO:  添加租客合同DTO
     * @return: int
     * @Author: @Dog_E
     * @Date: 2020/8/31 0031
     **/
    int insertTenantContract(TenantContractDTO contractDTO);

    /**
     * @Description: 审批查询
     * @param approveDTO: 审批请求体
     * @return: ApproveResp 返回审批对象
     * @Author: @Dog_E
     * @Date: 2020/9/15 0015 09:30
     **/
    public List<ApproveResp> approvalQuery(ApproveDTO approveDTO);
}
